package Code.InnerClass.Anonymity;

public class Test {
    /*
    匿名内部类：隐藏名字的内部类，可以写在成员位置，也可以写在局部位置

    匿名内部类的格式：
        new 类名或者接口名(){
        重写方法；
        };

    格式细节：
        包含了继承或实现，方法重写，创建对象。
        整体就是一个类的子类对象或者接口的实现类对象
     */
    public static void main(String[] args) {

        //匿名内部类
        new Swim(){
            @Override
            public void swimming() {
                System.out.println("重写了swimming方法");
            }
        };



        method(
                new Animal(){
                    @Override
                    public void eat() {
                        System.out.println("重写了eat方法");
                    }
                }
        );
    }

    public static void method(Animal a){
        a.eat();
    }
}
